package 剑指Offer;

import java.util.Arrays;

public class Offer45_把数组排成最小的数 {
    public String minNumber(int[] nums) {
        String[] strs = new String[nums.length];
        for (int i = 0; i < nums.length; i++) {
            strs[i] = String.valueOf(nums[i]);
        }
        /*
        Arrays.sort()是某比较方法的结果,如果返回结果>0就交换两个元素，<0就不交换
        比如X+y>y+x，那么证明x“大于”y，也就是说排序后x应该在y的右边，也即交换了x,y的位置
         */

        Arrays.sort(strs, (x, y) -> {
            // x+y 和 y+x 比大小
            return (x + y).compareTo(y + x);
        });
        StringBuilder res = new StringBuilder();
        for (String s : strs) {
            res.append(s);
        }

        return res.toString();
    }


}
